package xcu.lxj.nettychat.user.service.inter;

/**
 * @Author XinJian Lei
 * @Date 2024/9/28 14:54
 * @Version 1.0
 */
public interface LoginService {

    /**
     * 校验token是不是有效
     *
     * @param token
     * @return
     */
    boolean verify(String token);

    /**
     * 刷新token有效期
     *
     * @param token
     */
    void renewalTokenIfNecessary(String token);

    /**
     * 登录成功，获取token
     *
     * @param uid
     * @return 返回token
     */
    String login(Long uid);


    /**
     * 根据邮箱和密码登陆
     * @param email
     * @param password
     * @return
     */
    String login(String email,String password);

    /**
     * 如果token有效，返回uid
     *
     * @param token
     * @return
     */
    Long getValidUid(String token);


}
